package org.jeecg.modules.order.entity;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: box_order
 * @Author: jeecg-boot
 * @Date:   2023-05-27
 * @Version: V1.0
 */
@Data
@TableName("box_order")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="box_order对象", description="box_order")
public class BoxOrder implements Serializable {
    private static final long serialVersionUID = 1L;

	/**ID*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "ID")
    private Integer id;
	/**盲盒ID*/
	@Excel(name = "盲盒ID", width = 15)
    @ApiModelProperty(value = "盲盒ID")
    private Integer boxflId;
	/**盲盒名称*/
	@Excel(name = "盲盒名称", width = 15)
    @ApiModelProperty(value = "盲盒名称")
    private String boxflName;
	/**盲盒主图*/
	@Excel(name = "盲盒主图", width = 15)
    @ApiModelProperty(value = "盲盒主图")
    private String image;
	/**用户ID*/
	@Excel(name = "用户ID", width = 15)
    @ApiModelProperty(value = "用户ID")
    private Integer userId;
	/**支付方式:wechat=微信,alipay=支付宝*/
	@Excel(name = "支付方式:wechat=微信,alipay=支付宝", width = 15, dicCode = "pay_method")
	@Dict(dicCode = "pay_method")
    @ApiModelProperty(value = "支付方式:wechat=微信,alipay=支付宝")
    private String payMethod;
	/**支付价格*/
	@Excel(name = "支付价格", width = 15)
    @ApiModelProperty(value = "支付价格")
    private BigDecimal payCoin;
	/**商户订单号*/
	@Excel(name = "商户订单号", width = 15)
    @ApiModelProperty(value = "商户订单号")
    private String outTradeNo;
	/**微信平台订单号*/
	@Excel(name = "微信平台订单号", width = 15)
    @ApiModelProperty(value = "微信平台订单号")
    private String transactionId;
	/**支付宝订单号*/
	@Excel(name = "支付宝订单号", width = 15)
    @ApiModelProperty(value = "支付宝订单号")
    private String alipayTradeNo;
	/**付款时间*/
	@Excel(name = "付款时间", width = 15)
    @ApiModelProperty(value = "付款时间")
    private Integer payTime;
	/**状态:unpay=待支付,used=已开盒,undei=已关闭*/
	@Excel(name = "状态:unpay=待支付,used=已开盒,undei=已关闭", width = 15, dicCode = "order_status")
	@Dict(dicCode = "order_status")
    @ApiModelProperty(value = "状态:unpay=待支付,used=已开盒,undei=已关闭")
    private String status;
	/**后台已读标识:1已读,0未读*/
	@Excel(name = "后台已读标识:1已读,0未读", width = 15)
    @ApiModelProperty(value = "后台已读标识:1已读,0未读")
    private Integer backendRead;
	/**创建时间*/
    @ApiModelProperty(value = "创建时间")
    private Integer createTime;
	/**更新时间*/
    @ApiModelProperty(value = "更新时间")
    private Integer updateTime;
	/**删除时间*/
	@Excel(name = "删除时间", width = 15)
    @ApiModelProperty(value = "删除时间")
    private Integer deleteTime;
	/**终端：0=h5,1=小程序,2=APP*/
	@Excel(name = "终端：0=h5,1=小程序,2=APP", width = 15, dicCode = "terminal_type")
	@Dict(dicCode = "terminal_type")
    @ApiModelProperty(value = "终端：0=h5,1=小程序,2=APP")
    private Integer terminal;
	/**数量*/
	@Excel(name = "数量", width = 15)
    @ApiModelProperty(value = "数量")
    private Integer num;
	/**运费*/
	@Excel(name = "运费", width = 15)
    @ApiModelProperty(value = "运费")
    private BigDecimal deliveryFee;
	/**抵扣星石数量*/
	@Excel(name = "抵扣星石数量", width = 15)
    @ApiModelProperty(value = "抵扣星石数量")
    private String xingshi;
	/**是否已经抽过奖品*/
	@Excel(name = "是否已经抽过奖品", width = 15, dicCode = "yn")
	@Dict(dicCode = "yn")
    @ApiModelProperty(value = "是否已经抽过奖品")
    private Integer ischou;
}
